/*
 * @lc app=leetcode.cn id=804 lang=typescript
 *
 * [804] 唯一摩尔斯密码词
 */

// @lc code=start
const list = [
    ".-",
    "-...",
    "-.-.",
    "-..",
    ".",
    "..-.",
    "--.",
    "....",
    "..",
    ".---",
    "-.-",
    ".-..",
    "--",
    "-.",
    "---",
    ".--.",
    "--.-",
    ".-.",
    "...",
    "-",
    "..-",
    "...-",
    ".--",
    "-..-",
    "-.--",
    "--..",
];
function uniqueMorseRepresentations(words: string[]): number {
    return new Set(
        words.map((i) => {
            const len = toMorse(i);

            return len;
        })
    ).size;
}

const toMorse = (s: string) => {
    return s
        .split("")
        .map((i) => {
            return list[i.charCodeAt(0) - 97];
        })
        .join("");
};
// @lc code=end
